The present invention generally relates to packet switches, and particular to a system and method to implement a packet switch output buffer.
Packet switches are typically implemented within the various layers of a standard Open System Interconnection (OSI) Model which general networks use in order to allow data communication within a network environment. The typical packet switches contained in the standard OSI Model network are designed to provide the three lower layer services to the respective subscribers (i.e., physical layer, data link layer and network layer).
Accordingly, data packets or data cells are routed through the various layers of the OSI Model network by the respective packet switches of the standard network system. As data packet traffic within a network system increases, the need for a high data packet transfer rate becomes increasingly important to the proper overall operations of the network. It is therefore desirable to provide a packet switch that can provide a high data packet transfer rate.
The present invention provides a system and method to implement a packet switch output buffer. Incoming data packets are temporarily stored in an input buffer memory. Data packets in the input buffer memory are then examined to determine locations in an output buffer memory where the data packets should be transferred. Data packets in the input buffer memory are then transferred to the output buffer memory, such that data packets destined for a line card are written in an output memory block corresponding to the line card. Afterward, data packets in the output buffer memory are extracted and forwarded.
In accordance with one embodiment of the present invention, an output buffer in a packet switch includes an output buffer memory that is configured to store data packets. The output buffer memory includes number of output memory blocks. Each of the output memory blocks configured to store data packets destined for a corresponding line card. The output buffer further includes a scheduler coupled to the output memory to extract data packets stored in the output buffer memory.